Distributed Subtyping

نویسندگان

  • Sébastien Baehni
  • João Barreto
  • Rachid Guerraoui
چکیده

One of the most frequent operations in object-oriented programs is the instanceof test, also called the subtyping test or the type inclusion test. This test determines if a given object is an instance of some type. Surprisingly, despite a lot of research on distributed object-oriented languages and systems, almost no work has been devoted to the implementation of this test in a distributed environment. This paper presents the first algorithm to implement the subtyping test on an object received through the wire, without having to download the full code of the object type, nor to deserialize the object. We use a slicing technique that encodes a (multiple-subtyping) hierarchy using as little memory as the best known centralized implementation of the subtyping test. Our slicing technique is however different than centralized ones and allows for the dynamic addition of types without global reconfiguration. We convey the practicality of our algorithm through performance measures obtained from a fully distributed implementation of our algorithm which we experiment on standard Java hierarchies. In particular, we show that we can perform a subtyping test between 3 and 12 times faster than the code downloading approach without hampering the time taken for deserialization. Moreover, we require the same subtyping time as a string-based approach while reducing the encoding length by a factor of 50.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Subtyping and Locality in Distributed Higher Order Processes

This paper studies one important aspect of distributed systems, locality, using a calculus of distributed higher-order processes in which not only basic values or channels, but also parameterised processes are transferred across distinct locations. An integration of the subtyping of λ-calculus and IO-subtyping of the π-calculus offers a tractable tool to control the locality of channel names in...

متن کامل

Structural Subtyping in a Distributed Object System

Object-oriented techniques increase program modularity, decrease coupling, and improve data abstraction by supporting encapsulation through narrow, rigidly deened and strongly enforced interfaces to objects. Applying object-oriented techniques to address problems of building scal-able and maintainable distributed systems seems an obvious approach since reducing coupling and increasing modularit...

متن کامل

Subtyping for Distributed Object Stores (extended Abstract)

I review the Liskov and Wing subtype deenition that takes into consideration the problem of subtyping in the presence of mutable objects. I then show how this notion of subtyping is relevant to the design of the TOM object repository whose main application today is a data type conversion service accesssible through the Web.

متن کامل

Lingua-Franca: An IDL for Structural Subtyping Distributed Object Systems

Recently the trend has been towards applying object-oriented techniques to address problems of building scalable and maintainable distributed systems. Object-oriented programming increases modularity and data abstraction by supporting encapsulation through narrow, rigidly deened and strongly enforced interfaces to objects. Unfortunately, object-oriented interfaces and mechanisms are usually onl...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006